home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / cadt4m.zip / CADET4M.DOC next >
Lisp/Scheme  |  1993-01-23  |  18KB  |  448 lines

  1.  
  2.                           CADET4M.DOC  12/23/92
  3.             GUIDE FOR ADDING CADET v4.0 SUPPORT TO AUTOCAD MENUS
  4.                        Copyright 1993 Steve Waskow
  5.  
  6.  
  7. The following is a guide for adding CADET v4.0 support to the pull-down
  8. and screen sections of your AutoCAD menu. This involves editing your
  9. menu source code, the ACAD.MNU file, and allowing AutoCAD to recompile
  10. it into an ACAD.MNX file.  This is a only a guide, not a tutorial, so we
  11. recommend that attempts to modify AutoCAD menus only be done by those
  12. with some experience at menu customization.
  13.  
  14. +--------------------------------------------------------------------------+
  15. |                    PART 1, PULL-DOWN (POP) MENUS                         |
  16. +--------------------------------------------------------------------------+
  17.  
  18. +-----------------------------------+
  19. | MODIFYING R10 ACAD.MNU PULL-DOWNS |
  20. +-----------------------------------+
  21. +--------------------------------------------------------------------------+
  22. | In the following example, CADET is attached to to the [Tools] pull-down  |
  23. | (section ***POP1).  Note that we have added the submenu name **tools to  |
  24. | the [Tools] menu so that we can have direct access later, regardless of  |
  25. | the ***POP1 stack.  A separator line [~--] follows the CADET menu label. |
  26. | Here is the heading of the modified [Tools] submenu.                     |
  27. +--------------------------------------------------------------------------+
  28.  
  29. ***POP1
  30. **tools
  31. [Tools]
  32. [CADET       >]^C^C$p1=cadet $p1=*
  33. [~--]
  34. [OSNAP]^C^C$p1= $p1=* OSNAP \
  35. ...
  36.  
  37. +--------------------------------------------------------------------------+
  38. | Between the [Tools] and [Filters] submenus, we add the [Cadet] submenu   |
  39. | itself.  Cadet routines are executed by first setting the global         |
  40. | variable CADET@ to the appropriate character, then calling a (Wts?40)    |
  41. | function.  Note that we call up the supporting screen menus ($s=...)     |
  42. | prior to executing the CADET code, and follow the CADET code with an     |
  43. | instruction to automatically swap back the [Tools] pull-down             |
  44. | ($p1=tools).  We also begin the [Cadet] submenu with a selection to      |
  45. | return to [Tools].  Separator lines [~--], though not necessary, divide  |
  46. | the CADET functions into logical sections.  Below is the [Cadet]         |
  47. | pull-down submenu in its entirety.                                       |
  48. +--------------------------------------------------------------------------+
  49.  
  50. **cadet
  51. [Cadet]
  52. [TOOLS            >]$p1=tools $p1=*
  53. [~--]
  54. [Create Notes]^C^C$S=X $s=CADETJ1 ^P(setq CADET@ "N")(WtsC40)^P $p1=tools
  55. [Create Text Table]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "C")(WtsC40)^P $p1=tools
  56. [Add Multiple Text]^C^C$S=X $s=CADETJ3 ^P(setq CADET@ "M")(WtsP40)^P $p1=tools
  57. [Add Text Below]^C^C^P(setq CADET@ "P")(WtsP40)^P $p1=tools
  58. [Import ASCII File]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "I")(WtsC40)^P $p1=tools
  59. [~--]
  60. [Align Text Column]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "A")(WtsJ40)^P $p1=tools
  61. [Rejustify Text]^C^C$S=X $s=CADETP2 ^P(setq CADET@ "J")(WtsJ40)^P $p1=tools
  62. [Set Text Defaults]^C^C^P(setq CADET@ "S")(WtsP40)^P $p1=tools
  63. [~--]
  64. [Edit Notes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "O")(WtsE40)^P $p1=tools
  65. [Edit Text Table]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "T")(WtsE40)^P $p1=tools
  66. [Edit Attributes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "B")(WtsE40)^P $p1=tools
  67. [General Mixed Edit]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "E")(WtsE40)^P $p1=tools
  68. [Global Dwg Edit]^C^C^P(setq CADET@ "G")(WtsE40)^P $p1=tools
  69. [Edit Text File]^C^C^P(setq CADET@ "X")(WtsM40)^P $p1=tools
  70.  
  71. +--------------------------------------------------------------------------+
  72. | For user convenience, we also add a CADET attachment to the [Filters]    |
  73. | submenu, which is also swapped off the [Tools] submenu.  Note that we    |
  74. | have also changed Filter's TOOLS menu label to address [Tools] direct by |
  75. | submenu name ($p1=tools) instead of popping the stack.  Here is the      |
  76. | modified [Filters] submenu in its entirety.                              |
  77. +--------------------------------------------------------------------------+
  78.  
  79. **filters
  80. [Filters]
  81. [CADET  >]$p1=cadet $p1=*
  82. [~--]
  83. .X
  84. .Y
  85. .Z
  86. .XY
  87. .XZ
  88. .YZ
  89. [~--]
  90. [TOOLS  >]$p1=tools $p1=*
  91.  
  92.  
  93. +-----------------------------------+
  94. | MODIFYING R11 ACAD.MNU PULL-DOWNS |
  95. +-----------------------------------+
  96. +--------------------------------------------------------------------------+
  97. | Modifying the R11 menu is essentially the same as modifying R10's, with  |
  98. | the exception that the R11 submenu that contains object snaps is named   |
  99. | [Assist] instead of [Tools].                                             |
  100. |                                                                          |
  101. | In the following example, CADET is attached to to the [Assist] pull-down |
  102. | (section ***POP1).  Note that we have added the submenu name **assist to |
  103. | the [Assist] menu so that we can have direct access later, regardless of |
  104. | the ***POP1 stack.  A separator line [~--] follows the CADET menu label. |
  105. | Here is the heading of the modified [Assist] submenu.                    |
  106. +--------------------------------------------------------------------------+
  107.  
  108. ***POP1
  109. **assist
  110. [Assist]
  111. [CADET       >]$p1=cadet $p1=*
  112. [~--]
  113. [Help!        ]'?
  114. ...
  115.  
  116. +--------------------------------------------------------------------------+
  117. | Between the [Assist] and [Filters] submenus, we add the [Cadet] submenu  |
  118. | itself.  Cadet routines are executed by first setting the global         |
  119. | variable CADET@ to the appropriate character, then calling a (Wts?40)    |
  120. | function.  Note that we call up the supporting screen menus ($s=...)     |
  121. | prior to executing the CADET code, and follow the CADET code with an     |
  122. | instruction to automatically swap back the [Assist] pull-down            |
  123. | ($p1=assist).  We also begin the [Cadet] submenu with a selection to     |
  124. | return to [Assist].  Separator lines [~--], though not necessary, divide |
  125. | the CADET functions into logical sections.  Below is the [Cadet]         |
  126. | pull-down submenu in its entirety.                                       |
  127. +--------------------------------------------------------------------------+
  128.  
  129. **cadet
  130. [Cadet]
  131. [ASSIST           >]$p1=assist $p1=*
  132. [~--]
  133. [Create Notes]^C^C$S=X $s=CADETJ1 ^P(setq CADET@ "N")(WtsC40)^P $p1=assist
  134. [Create Text Table]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "C")(WtsC40)^P $p1=assist
  135. [Add Multiple Text]^C^C$S=X $s=CADETJ3 ^P(setq CADET@ "M")(WtsP40)^P $p1=assist
  136. [Add Text Below]^C^C^P(setq CADET@ "P")(WtsP40)^P $p1=assist
  137. [Import ASCII File]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "I")(WtsC40)^P $p1=assist
  138. [~--]
  139. [Align Text Column]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "A")(WtsJ40)^P $p1=assist
  140. [Rejustify Text]^C^C$S=X $s=CADETP2 ^P(setq CADET@ "J")(WtsJ40)^P $p1=assist
  141. [Set Text Defaults]^C^C^P(setq CADET@ "S")(WtsP40)^P $p1=assist
  142. [~--]
  143. [Edit Notes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "O")(WtsE40)^P $p1=assist
  144. [Edit Text Table]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "T")(WtsE40)^P $p1=assist
  145. [Edit Attributes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "B")(WtsE40)^P $p1=assist
  146. [General Mixed Edit]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "E")(WtsE40)^P $p1=assist
  147. [Global Dwg Edit]^C^C^P(setq CADET@ "G")(WtsE40)^P $p1=assist
  148. [Edit Text File]^C^C^P(setq CADET@ "X")(WtsM40)^P $p1=assist
  149.  
  150. +--------------------------------------------------------------------------+
  151. | For user convenience, we also add a CADET attachment to the [Filters]    |
  152. | submenu, which is also swapped off the [Assist] submenu.  Note that we   |
  153. | have also changed Filter's ASSIST menu label to address [Assist] direct  |
  154. | by submenu name ($p1=assist) instead of popping the stack.  Here is the  |
  155. | modified [Filters] submenu in its entirety.                              |
  156. +--------------------------------------------------------------------------+
  157.  
  158. **filters
  159. [Filters]
  160. [CADET  >]$p1=cadet $p1=*
  161. [~--]
  162. .X
  163. .Y
  164. .Z
  165. .XY
  166. .XZ
  167. .YZ
  168. [~--]
  169. [ASSIST >]$p1=assist $p1=*
  170.  
  171.  
  172. +--------------------------------------------------+
  173. | MODIFYING R11 for WINDOWS ACADWIN.MNU PULL-DOWNS |
  174. +--------------------------------------------------+
  175. +--------------------------------------------------------------------------+
  176. | In the following example, CADET is attached to the [Assist] pull-down    |
  177. | submenu (section ***POP1).  R11 Windows uses cascading menu system which |
  178. | is simpler to implement than prior versions.  The CADET submenu begins   |
  179. | with a "->" (start submenu) indicator in its menu label, and continues   |
  180. | to its fourteenth function which includes the "<-" (end submenu)         |
  181. | indicator. Separator lines [~--], though not necessary, divide the CADET |
  182. | functions into logical sections.  Note that we call supporting screen    |
  183. | menus ($s=...) prior to executing the CADET code.  The & symbol is used  |
  184. | in the menu selections to indicate hot keys.  Here is the heading of the |
  185. | modified [Assist] submenu, which includes the cascading CADET submenu in |
  186. | its entirety.                                                            |
  187. +--------------------------------------------------------------------------+
  188.  
  189. ***POP1
  190. [&Assist]
  191. [->&CADET      ]
  192. [Create &Notes]^C^C$S=X $s=CADETJ1 ^P(setq CADET@ "N")(WtsC40)
  193. [&Create Text Table]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "C")(WtsC40)
  194. [Add &Multiple Text]^C^C$S=X $s=CADETJ3 ^P(setq CADET@ "M")(WtsP40)
  195. [Add Text &Below]^C^C^P(setq CADET@ "P")(WtsP40)
  196. [&Import ASCII File]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "I")(WtsC40)
  197. [~--]
  198. [A&lign Text Column]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "A")(WtsJ40)
  199. [&Rejustify Text]^C^C$S=X $s=CADETP2 ^P(setq CADET@ "J")(WtsJ40)
  200. [&Set Text Defaults]^C^C^P(setq CADET@ "S")(WtsP40)
  201. [~--]
  202. [Edit N&otes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "O")(WtsE40)
  203. [Edit Text &Table]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "T")(WtsE40)
  204. [Edit &Attributes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "B")(WtsE40)
  205. [General Mixed &Edit]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "E")(WtsE40)
  206. [&Global Dwg Edit]^C^C^P(setq CADET@ "G")(WtsE40)
  207. [<-Edit Text &File]^C^C^P(setq CADET@ "X")(WtsM40)
  208. [~--]
  209. [&Help!        ]'?
  210. ...
  211.  
  212. +-----------------------------------+
  213. | MODIFYING R12 ACAD.MNU PULL-DOWNS |
  214. +-----------------------------------+
  215. +--------------------------------------------------------------------------+
  216. | In the following example, CADET is attached to the [Assist] pull-down    |
  217. | submenu (section ***POP2).  R12 uses a cascading menu system similar to  |
  218. | that of R11 Windows, which is graceful and simple to implement.  The     |
  219. | CADET submenu begins with a "->" (start submenu) indicator in its menu   |
  220. | label, and is indented through its fourteenth function, which includes   |
  221. | the "<-" (end submenu) indicator. Separator lines [--], though not       |
  222. | necessary, divide the CADET functions into logical sections.  Note that  |
  223. | we call supporting screen menus ($s=...) prior to executing the CADET    |
  224. | code.  Here is the heading of the modified [Assist] submenu, which       |
  225. | includes the cascading CADET submenu in its entirety.                    |
  226. +--------------------------------------------------------------------------+
  227.  
  228. ***POP2
  229. [Assist]
  230. [->CADET]
  231.   [Create Notes]^C^C$S=X $s=CADETJ1 ^P(setq CADET@ "N")(WtsC40)
  232.   [Create Text Table]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "C")(WtsC40)
  233.   [Add Multiple Text]^C^C$S=X $s=CADETJ3 ^P(setq CADET@ "M")(WtsP40)
  234.   [Add Text Below]^C^C^P(setq CADET@ "P")(WtsP40)
  235.   [Import ASCII File]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "I")(WtsC40)
  236.   [--]
  237.   [Align Text Column]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "A")(WtsJ40)
  238.   [Rejustify Text]^C^C$S=X $s=CADETP2 ^P(setq CADET@ "J")(WtsJ40)
  239.   [Set Text Defaults]^C^C^P(setq CADET@ "S")(WtsP40)
  240.   [--]
  241.   [Edit Notes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "O")(WtsE40)
  242.   [Edit Text Table]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "T")(WtsE40)
  243.   [Edit Attributes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "B")(WtsE40)
  244.   [General Mixed Edit]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "E")(WtsE40)
  245.   [Global Dwg Edit]^C^C^P(setq CADET@ "G")(WtsE40)
  246.   [<-Edit Text File]^C^C^P(setq CADET@ "X")(WtsM40)
  247. [--]
  248. [Help!]'?
  249. ...
  250.  
  251.  
  252. +--------------------------------------------------------------------------+
  253. |                     PART 2, SCREEN (SIDE) MENUS                          |
  254. +--------------------------------------------------------------------------+
  255.  
  256. +-------------------------------------------------------+
  257. | MODIFYING ACAD.MNU SCREEN MENUS, ALL RELEASES R10-R12 |
  258. +-------------------------------------------------------+
  259. +--------------------------------------------------------------------------+
  260. | First, locate the top level AutoCAD menu under the ***SCREEN section of  |
  261. | ACAD.MNU.  A convenient hole to add the CADET menu label is just above   |
  262. | the [SAVE:] command.  Here is the tail of the top AutoCAD screen menu.   |
  263. +--------------------------------------------------------------------------+
  264.  
  265. ...
  266. [CADET]$S=X $S=CADET1
  267. [SAVE:]^C^CSAVE
  268.  
  269. +--------------------------------------------------------------------------+
  270. | Add the CADET screen submenus into the bottom of the ***SCREEN section,  |
  271. | just before the next section label (***TABLET1 or ***Comment).  The      |
  272. | first three CADET screen submenus (**CADET1, **CADETP1 and **CADETP2)    |
  273. | are the same for all releases of AutoCAD.                                |
  274. +--------------------------------------------------------------------------+
  275.  
  276. **CADET1 3
  277. [-CADET- ]^C^C$S=X $S=CADET1
  278. [Notes   ]^C^C$S=X $s=CADETJ1 ^P(setq CADET@ "N")(WtsC40)
  279. [Table   ]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "C")(WtsC40)
  280. [MultiTxt]^C^C$S=X $s=CADETJ3 ^P(setq CADET@ "M")(WtsP40)
  281. [PlusText]^C^C^P(setq CADET@ "P")(WtsP40)
  282. [Import  ]^C^C$S=X $s=CADETJ2 ^P(setq CADET@ "I")(WtsC40)
  283. [AlignCol]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "A")(WtsJ40)
  284. [Justify ]^C^C$S=X $s=CADETP2 ^P(setq CADET@ "J")(WtsJ40)
  285. [SetText ]^C^C^P(setq CADET@ "S")(WtsP40)
  286. [Ed Notes]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "O")(WtsE40)
  287. [Ed Table]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "T")(WtsE40)
  288. [Ed Attrb]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "B")(WtsE40)
  289. [Ed Mixed]^C^C$S=X $s=CADETP1 ^P(setq CADET@ "E")(WtsE40)
  290. [Ed Globl]^C^C^P(setq CADET@ "G")(WtsE40)
  291. [Ed File ]^C^C^P(setq CADET@ "X")(WtsM40)
  292. **CADETP1 3
  293. [-CADET-]^C^C$S=X $S=CADET1
  294.  
  295. Window
  296. Last
  297. Previous
  298. Crossing
  299. Remove
  300. Add
  301. Undo
  302.  
  303. **CADETP2 3
  304. [-CADET-]^C^C$S=X $S=CADET1
  305. Window
  306. Last
  307. Previous
  308. Crossing
  309. Remove
  310. Add
  311. Undo
  312.  
  313. [justify]$S=X $S=CADETJ3
  314.  
  315. +--------------------------------------------------------------------------+
  316. | The final three CADET screen submenus (**CADETJ1, **CADETJ2 and          |
  317. | **CADETJ3) are for text justification, and differ between AutoCAD R10    |
  318. | and later releases.  Below are the R10 versions.                         |
  319. +--------------------------------------------------------------------------+
  320.  
  321. **CADETJ1 3
  322. [-CADET-]^C^C$S=X $S=CADET1
  323.  
  324. left
  325. [centered]C
  326. right
  327. middle
  328. fit
  329. bound
  330. wrap
  331.  
  332. **CADETJ2 3
  333. [-CADET-]^C^C$S=X $S=CADET1
  334.  
  335. left
  336. [centered]C
  337. right
  338. middle
  339. fit
  340. bound
  341.  
  342. **CADETJ3 3
  343. [-CADET-]^C^C$S=X $S=CADET1
  344.  
  345. left
  346. [centered]C
  347. right
  348. middle
  349. fit
  350. [aligned]align
  351.  
  352. +--------------------------------------------------------------------------+
  353. | The R11 & R12 versions of the final three CADET screen submenus          |
  354. | (**CADETJ1, **CADETJ2 and **CADETJ3) include the additional R11+ text    |
  355. | justifications.  Here are the versions for R11 and later.                |
  356. +--------------------------------------------------------------------------+
  357.  
  358. **CADETJ1 3
  359. [-CADET-]^C^C$S=X $S=CADET1
  360. Left
  361. [Centered]C
  362. Right
  363. Middle
  364. Fit
  365. Bound
  366. Wrap
  367. [Top-]T\
  368. [Middle-]M\
  369. [Bottom-]B\
  370. [ -Left]L
  371. [ -Center]C
  372. [ -Right]R
  373.  
  374. **CADETJ2 3
  375. [-CADET-]^C^C$S=X $S=CADET1
  376.  
  377. Left
  378. [Centered]C
  379. Right
  380. Middle
  381. Fit
  382. Bound
  383. [Top-]T\
  384. [Middle-]M\
  385. [Bottom-]B\
  386. [ -Left]L
  387. [ -Center]C
  388. [ -Right]R
  389.  
  390. **CADETJ3 3
  391. [-CADET-]^C^C$S=X $S=CADET1
  392.  
  393. Left
  394. [Centered]C
  395. Right
  396. Middle
  397. Fit
  398. [Aligned]A
  399. [Top-]T\
  400. [Middle-]M\
  401. [Bottom-]B\
  402. [ -Left]L
  403. [ -Center]C
  404. [ -Right]R
  405.  
  406. ----------------------------------------------------------------------------
  407. This concludes the CADET menu guide.  Full AutoCAD menus for R10-12 are now
  408. being provided with licensed copies of CADET.  CADET v4.0 users who
  409. registered prior to the start of the menu distribution can obtain the full
  410. set of menus on request (mail or phone) from Wasco Technical Software. There
  411. is no charge except a shipping and handling fee of $6.00 US per site, which
  412. must be prepaid by check, M.O., VISA or MasterCard (sorry, P.O.s cannot be
  413. accepted for such small amounts).
  414.  
  415.                      Steve Waskow   CIS 72020,2031
  416.                      Wasco Technical Software
  417.                      1211 Grand Junction Drive
  418.                      Katy, Texas  77450
  419.                      713-392-1359  Fax 713-392-1073
  420.  
  421. CADET and CADET - the CAD Text Editor are trademarks of Steve Waskow and
  422. Wasco Technical Software.
  423.  
  424. The CADET submenus and this documentation are Copyright 1993 by Steve Waskow.
  425. Permission to use and distribute this document without fee is hereby granted.
  426.  
  427. STEVE WASKOW AND WASCO TECHNICAL SOFTWARE MAKES NO WARRANTY OF ANY KIND,
  428. EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF
  429. MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THIS
  430. SOFTWARE AND DOCUMENTATION.
  431.  
  432.                       ---------------------------
  433.  
  434. AutoCAD is a registered trademark of Autodesk, Inc.
  435.  
  436. Portions of the above menu code are Copyright (C) 1986-1992 by Autodesk, Inc.
  437. The following notification applies to Autodesk menu code.
  438.  
  439.     Permission to use, copy, modify, and distribute this software
  440.     for any purpose and without fee is hereby granted, provided
  441.     that the above copyright notice appears in all copies and that
  442.     both that copyright notice and this permission notice appear in
  443.     all supporting documentation.
  444.  
  445.     THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED
  446.     WARRANTY.  ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR
  447.     PURPOSE AND OF MERCHANTABILITY ARE HEREBY DISCLAIMED.
  448.